package com.np.objectboxdemo1;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;

import com.np.objectboxdemo1.bean.MyObjectBox;
import com.np.objectboxdemo1.bean.UserBean;
import com.np.objectboxdemo1.bean.UserBean_;
import com.np.objectboxdemo1.database.ObjectBox;
import com.np.objectboxdemo1.database.UserDB;

import java.util.List;

import io.objectbox.Property;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        UserDB.removeAll();

        {
            UserBean bean = new UserBean();
            bean.setId(2);
            bean.setAccount("admin");
            bean.setPassword("123456");
            UserDB.put(bean);
        }

        {
            UserBean bean = new UserBean();
            bean.setAccount("test");
            bean.setPassword("123456");
            UserDB.put(bean);
        }

        List<UserBean> users = UserDB.list();
        resetAllPassword(users);
        users = UserDB.list();
    }

    private void resetAllPassword(List<UserBean> users) {
        for (UserBean user : users) {
            user.setPassword("000000");
            UserDB.put(user);
        }
    }

    private void test() {
        UserBean bean = new UserBean();

        ObjectBox.get().boxFor(UserBean.class).put(bean);

        ObjectBox.get().boxFor(UserBean.class).remove(1);   //根据删除一个
        ObjectBox.get().boxFor(UserBean.class).remove(1, 2);    //根据id删除多个
        ObjectBox.get().boxFor(UserBean.class).remove(bean);    //根据对象删除
        ObjectBox.get().boxFor(UserBean.class).removeAll(); //删除所有

        ObjectBox.get().boxFor(UserBean.class).getAll();    //查找全部
        ObjectBox.get().boxFor(UserBean.class).query().build().find();  //查找全部
        ObjectBox.get().boxFor(UserBean.class).query().orderDesc(UserBean_.id).build().find();  //倒序
        int pageIndex = 1, pageSize = 10;
        ObjectBox.get().boxFor(UserBean.class).query().build().find(pageIndex * pageSize, pageSize); //分页
        ObjectBox.get().boxFor(UserBean.class).query().equal(UserBean_.id, 5).build().find();   //条件查询
    }
}